'''
Python中通过Key访问字典，当Key不存在时，会引发‘KeyError’异常。
为了避免这种情况的发生，可以使用collections类中的defaultdict()方法来为字典提供默认值。
'''
from collections import defaultdict
# s=[('yellow',1),('blue', 2), ('yellow', 3), ('blue', 4), ('red', 1)]
# d=defaultdict(list)#将value以list形式存在
# for k, v in s:
#     d[k].append(v)
# print(d["yellow"])
# a=sorted(d.items())
# print(a)
# h = dict.fromkeys(["a","b","c"],1)

s = [1,2,3,4,4,3,2,1]
d = defaultdict(int)
for k in s:
    d[k] += 1
print(d.values())
print('\n',d)
print(sum(d.values()))
a=sorted(d.items())
print('\n',a)
from functools import reduce
print(reduce(lambda x, y: x + y, [v for x,v in a]))

